package com.ckm.service;

import com.ckm.dto.StudentCourseInfoDto;
import com.ckm.entity.StudentCourse;
import com.github.pagehelper.PageInfo;
import jakarta.servlet.http.HttpServletResponse;

import java.util.List;
import java.util.Map;

public interface StudentCourseService {

    void addStudentCourse(List<StudentCourse> studentCourseList);

    void deleteStudentCourse(Integer id);

    void updateStudentCourse(StudentCourse studentCourse);

    PageInfo<StudentCourse> getStudentCoursePage(StudentCourse studentCourse, int pageNum, int pageSize);

    List<StudentCourse> findStudentCourse(StudentCourse studentCourse);

    Map<String, Object> statistics(String courseName);

    void chooseStudentCourse(StudentCourse studentCourse);

    PageInfo<?> allStudentCourseByMajor(int pageNum,int pageSize,String majorName);

    List<StudentCourseInfoDto> studentScore(StudentCourseInfoDto studentCourseInfoDto,int pageNum,int pageSize);

    void outputStudentScore(String courseName, Integer teacherId, HttpServletResponse response);

    List<StudentCourseInfoDto> rankStudentScore(StudentCourseInfoDto studentCourseInfoDto,int pageNum,int pageSize);
}
